package com.ruoyi.xp.order.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 虾皮订单明细外部采购货物信息对象 t_xp_order_item_head_package
 * 
 * @author chdx
 * @date 2023-01-22
 */
public class OrderItemHeadPackage extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 表的id */
    private Long orderItemHeadPackageId;

    /** 订单号 */
    @Excel(name = "订单号")
    private String orderSn;

    /** 仓库id */
    @Excel(name = "仓库id")
    private Long warehouseId;

    /** SKUID */
    @Excel(name = "SKUID")
    private Long modelId;

    /** 物流公司 */
    @Excel(name = "物流公司")
    private String logisticsCompany;

    /** 运单号 */
    @Excel(name = "运单号")
    private String trackingNo;

    /** 采购平台 */
    @Excel(name = "采购平台")
    private String purchasePlatform;

    /** 采购平台名称 */
    @Excel(name = "采购平台名称")
    private String purchasePlatformName;

    /** 采购订单号 */
    @Excel(name = "采购订单号")
    private String purchaseOrderSn;

    /** 采购订单链接 */
    @Excel(name = "采购订单链接")
    private String purchaseOrderDetailUrl;

    /** 买家备注 */
    @Excel(name = "买家备注")
    private String accountNote;

    /** 是否支持退货 */
    @Excel(name = "是否支持退货")
    private String isApplyReturn;

    /** 退货状态 */
    @Excel(name = "退货状态")
    private String returnStatus;

    /** 签收状态 */
    @Excel(name = "签收状态")
    private String signStatus;

    /** 打包状态 */
    @Excel(name = "打包状态")
    private String packStatus;

    /** 重量 */
    @Excel(name = "重量")
    private Long weight;

    /** 订单号 */
    @Excel(name = "订单号")
    private String packageType;

    /** 包裹类型 */
    @Excel(name = "包裹类型")
    private String hasSendPackageUnsign;

    /** 到达仓库时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "到达仓库时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date arriveWarehouseTime;

    /** 签收时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "签收时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date signTime;

    /** 拒绝签收时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "拒绝签收时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date refuseTime;

    /** 退货时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "退货时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date returnTime;

    /** 同意退货时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "同意退货时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date agreeReturnTime;

    /** 打印退货信息时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "打印退货信息时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date printReturnInfoTime;

    /** 申请退货时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "申请退货时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date applyReturnTime;

    /** 打包时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "打包时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date packTime;

    /** 数量 */
    @Excel(name = "数量")
    private Long quantity;

    /** 采购单价 */
    @Excel(name = "采购单价")
    private BigDecimal purchasePrice;

    /** 采购总价 */
    @Excel(name = "采购总价")
    private BigDecimal purchaseTotalPrice;

    /** 货图图片链接 */
    @Excel(name = "货图图片链接")
    private String logoUrl;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createDate;

    /** 最后修改时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后修改时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastUpdateDate;

    /** 最后修改人 */
    @Excel(name = "最后修改人")
    private Long lastUpdateBy;

    public void setOrderItemHeadPackageId(Long orderItemHeadPackageId) 
    {
        this.orderItemHeadPackageId = orderItemHeadPackageId;
    }

    public Long getOrderItemHeadPackageId() 
    {
        return orderItemHeadPackageId;
    }
    public void setOrderSn(String orderSn) 
    {
        this.orderSn = orderSn;
    }

    public String getOrderSn() 
    {
        return orderSn;
    }
    public void setWarehouseId(Long warehouseId) 
    {
        this.warehouseId = warehouseId;
    }

    public Long getWarehouseId() 
    {
        return warehouseId;
    }
    public void setModelId(Long modelId) 
    {
        this.modelId = modelId;
    }

    public Long getModelId() 
    {
        return modelId;
    }
    public void setLogisticsCompany(String logisticsCompany) 
    {
        this.logisticsCompany = logisticsCompany;
    }

    public String getLogisticsCompany() 
    {
        return logisticsCompany;
    }
    public void setTrackingNo(String trackingNo) 
    {
        this.trackingNo = trackingNo;
    }

    public String getTrackingNo() 
    {
        return trackingNo;
    }
    public void setPurchasePlatform(String purchasePlatform) 
    {
        this.purchasePlatform = purchasePlatform;
    }

    public String getPurchasePlatform() 
    {
        return purchasePlatform;
    }
    public void setPurchasePlatformName(String purchasePlatformName) 
    {
        this.purchasePlatformName = purchasePlatformName;
    }

    public String getPurchasePlatformName() 
    {
        return purchasePlatformName;
    }
    public void setPurchaseOrderSn(String purchaseOrderSn) 
    {
        this.purchaseOrderSn = purchaseOrderSn;
    }

    public String getPurchaseOrderSn() 
    {
        return purchaseOrderSn;
    }
    public void setPurchaseOrderDetailUrl(String purchaseOrderDetailUrl) 
    {
        this.purchaseOrderDetailUrl = purchaseOrderDetailUrl;
    }

    public String getPurchaseOrderDetailUrl() 
    {
        return purchaseOrderDetailUrl;
    }
    public void setAccountNote(String accountNote) 
    {
        this.accountNote = accountNote;
    }

    public String getAccountNote() 
    {
        return accountNote;
    }
    public void setIsApplyReturn(String isApplyReturn) 
    {
        this.isApplyReturn = isApplyReturn;
    }

    public String getIsApplyReturn() 
    {
        return isApplyReturn;
    }
    public void setReturnStatus(String returnStatus) 
    {
        this.returnStatus = returnStatus;
    }

    public String getReturnStatus() 
    {
        return returnStatus;
    }
    public void setSignStatus(String signStatus) 
    {
        this.signStatus = signStatus;
    }

    public String getSignStatus() 
    {
        return signStatus;
    }
    public void setPackStatus(String packStatus) 
    {
        this.packStatus = packStatus;
    }

    public String getPackStatus() 
    {
        return packStatus;
    }
    public void setWeight(Long weight) 
    {
        this.weight = weight;
    }

    public Long getWeight() 
    {
        return weight;
    }
    public void setPackageType(String packageType) 
    {
        this.packageType = packageType;
    }

    public String getPackageType() 
    {
        return packageType;
    }
    public void setHasSendPackageUnsign(String hasSendPackageUnsign) 
    {
        this.hasSendPackageUnsign = hasSendPackageUnsign;
    }

    public String getHasSendPackageUnsign() 
    {
        return hasSendPackageUnsign;
    }
    public void setArriveWarehouseTime(Date arriveWarehouseTime) 
    {
        this.arriveWarehouseTime = arriveWarehouseTime;
    }

    public Date getArriveWarehouseTime() 
    {
        return arriveWarehouseTime;
    }
    public void setSignTime(Date signTime) 
    {
        this.signTime = signTime;
    }

    public Date getSignTime() 
    {
        return signTime;
    }
    public void setRefuseTime(Date refuseTime) 
    {
        this.refuseTime = refuseTime;
    }

    public Date getRefuseTime() 
    {
        return refuseTime;
    }
    public void setReturnTime(Date returnTime) 
    {
        this.returnTime = returnTime;
    }

    public Date getReturnTime() 
    {
        return returnTime;
    }
    public void setAgreeReturnTime(Date agreeReturnTime) 
    {
        this.agreeReturnTime = agreeReturnTime;
    }

    public Date getAgreeReturnTime() 
    {
        return agreeReturnTime;
    }
    public void setPrintReturnInfoTime(Date printReturnInfoTime) 
    {
        this.printReturnInfoTime = printReturnInfoTime;
    }

    public Date getPrintReturnInfoTime() 
    {
        return printReturnInfoTime;
    }
    public void setApplyReturnTime(Date applyReturnTime) 
    {
        this.applyReturnTime = applyReturnTime;
    }

    public Date getApplyReturnTime() 
    {
        return applyReturnTime;
    }
    public void setPackTime(Date packTime) 
    {
        this.packTime = packTime;
    }

    public Date getPackTime() 
    {
        return packTime;
    }
    public void setQuantity(Long quantity) 
    {
        this.quantity = quantity;
    }

    public Long getQuantity() 
    {
        return quantity;
    }
    public void setPurchasePrice(BigDecimal purchasePrice) 
    {
        this.purchasePrice = purchasePrice;
    }

    public BigDecimal getPurchasePrice() 
    {
        return purchasePrice;
    }
    public void setPurchaseTotalPrice(BigDecimal purchaseTotalPrice) 
    {
        this.purchaseTotalPrice = purchaseTotalPrice;
    }

    public BigDecimal getPurchaseTotalPrice() 
    {
        return purchaseTotalPrice;
    }
    public void setLogoUrl(String logoUrl) 
    {
        this.logoUrl = logoUrl;
    }

    public String getLogoUrl() 
    {
        return logoUrl;
    }
    public void setCreateDate(Date createDate) 
    {
        this.createDate = createDate;
    }

    public Date getCreateDate() 
    {
        return createDate;
    }
    public void setLastUpdateDate(Date lastUpdateDate) 
    {
        this.lastUpdateDate = lastUpdateDate;
    }

    public Date getLastUpdateDate() 
    {
        return lastUpdateDate;
    }
    public void setLastUpdateBy(Long lastUpdateBy) 
    {
        this.lastUpdateBy = lastUpdateBy;
    }

    public Long getLastUpdateBy() 
    {
        return lastUpdateBy;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("orderItemHeadPackageId", getOrderItemHeadPackageId())
            .append("orderSn", getOrderSn())
            .append("warehouseId", getWarehouseId())
            .append("modelId", getModelId())
            .append("logisticsCompany", getLogisticsCompany())
            .append("trackingNo", getTrackingNo())
            .append("purchasePlatform", getPurchasePlatform())
            .append("purchasePlatformName", getPurchasePlatformName())
            .append("purchaseOrderSn", getPurchaseOrderSn())
            .append("purchaseOrderDetailUrl", getPurchaseOrderDetailUrl())
            .append("accountNote", getAccountNote())
            .append("isApplyReturn", getIsApplyReturn())
            .append("returnStatus", getReturnStatus())
            .append("signStatus", getSignStatus())
            .append("packStatus", getPackStatus())
            .append("weight", getWeight())
            .append("packageType", getPackageType())
            .append("hasSendPackageUnsign", getHasSendPackageUnsign())
            .append("arriveWarehouseTime", getArriveWarehouseTime())
            .append("signTime", getSignTime())
            .append("refuseTime", getRefuseTime())
            .append("returnTime", getReturnTime())
            .append("agreeReturnTime", getAgreeReturnTime())
            .append("printReturnInfoTime", getPrintReturnInfoTime())
            .append("applyReturnTime", getApplyReturnTime())
            .append("packTime", getPackTime())
            .append("quantity", getQuantity())
            .append("purchasePrice", getPurchasePrice())
            .append("purchaseTotalPrice", getPurchaseTotalPrice())
            .append("logoUrl", getLogoUrl())
            .append("createDate", getCreateDate())
            .append("createBy", getCreateBy())
            .append("lastUpdateDate", getLastUpdateDate())
            .append("lastUpdateBy", getLastUpdateBy())
            .toString();
    }
}
